Server virtualization techniques are popular, and the integration of a plurality of virtual servers onto a single piece of hardware (a single physical server) to construct a corporate information system has become the norm. In accordance with server virtualization techniques, the physical resources of a physical server (CPU, memory, and so forth), which conventionally had been associated on a one-to-one basis with the physical server, can be divided into a plurality of server resources and effectively utilized by independently running a virtual server for each server resource. In addition, by flexibly changing the amount of physical resources allocated to a virtual server, and transferring the virtual server to another physical server (a physical server that has virtualization functions and can run a plurality of virtual servers, such a physical server being referred to hereinbelow as a “virtual server host”), it is possible to distribute resources to meet demand for service provided by application on a virtual server. However, because the virtual server is sharing the resources provided by a single virtual server host, performance is affected by the other virtual servers on the same virtual server host.
Accordingly, an operation method that utilizes, without any modification, a physical server that does not have a hypervisor (software having functions for running a plurality of virtual servers on a single physical server) as a processing environment is conceivable even in an environment where a virtual server exists. A physical server that does not have a hypervisor monopolizes the physical resources possessed by a single hardware apparatus (the physical server), and therefore can make the most of the processing performance, and moreover, can be operated stably without receiving any influence from other servers. These physical servers will be called non-virtual servers, or bare metal servers herein. Although a non-virtual server has advantages from the standpoint of performance as mentioned above, it lacks flexibility of system construction compared to the virtual server host, which is capable of running a plurality of virtual servers. Meanwhile, cloud computing has been flourishing as a recent trend. The cloud reduces operational and management costs and meets increasing dependence on information systems by aggregating and integratively managing a large number of servers in the cloud on a platform using virtualization. A characteristic feature of the cloud is that it reinforces multi-tenant user management.
A tenant associates resources and/or a service menu provided by the cloud to each specific user group and/or organization. A plurality of tenants share one cloud infrastructure, thereby making it possible to increase the utilization efficiency of the entire platform. A mechanism for safeguarding security is essential so that an illegally access to the resources of a tenant by another tenant is inhibited. In an ordinary cloud system, security is ensured for each tenant by user authentication and network segmentation. A management apparatus for configuring network policy is disposed on the network, and controls the authorization/non-authorization of communications between servers in accordance with the tenants, users, and virtual server applications. A network configuration management apparatus like this must be capable of being flexibly created and changed in accordance with tenant and virtual server demands, and is realized as a virtual server called a network appliance.
Another requirement from the standpoint of performance is a mechanism that ensures stable operation without being affected by the operating state of a business system operating on another tenant. It is common to try to realize stable operations in a virtual server environment using load balancing that makes use of online virtual server migration, and by prioritizing control of the communications of each virtual server.
As described hereinabove, in an environment that aggregates a large number of tenants on a single platform, resource utilization efficiency increases, but guaranteeing processing performance becomes a problem. The practical application of a non-virtual server is one solution for obtaining stable computer processing performance, but it is essential that there be ideas for increasing disk I/O performance and network performance similarly. In addition, a resource configuration that covers these diverse items must be capable of changing as appropriate in line with the state of usage of the entire platform, which changes from moment to moment.
For example, PTL 1 discloses a router configuration method and system for distributing a communication load over a network. In accordance with this system, it is possible to utilize a plurality of network routes in parallel, and to make effective and practical use of network resources. PTL 2 discloses a method of efficiently managing the configuration in a multi-tenant environment.